1093C - Mishka and the Last Exam - CodeForces Solution


greedy *1300

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
#define fr first
#define sc second
#define pb push_back
#define ll long long
#define Mid ((L+R)/2);
#define rev(x) reverse(x.begin(),x.end())
#define sortt(x) sort(x.begin(),x.end())
#define deb(x) cout<<#x<<"="<<x<<endl
#define pans(x) x ? cout<<"YES"<<"\n" :cout<<"NO"<<"\n";
#define endl "\n"
#define AB ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#define log(x) (31^__builtin_clz(x)) // Easily calculate log2 on GNU G++ compilers
#define logll(x) (63^__builtin_clzll(x)) // Easily calculate log2 on GNU G++ compilers
#define stldeb(x) {cout<< #x << " = " ;for(auto it : x)cout<< it << " ";cout<< endl;}
#define stlpdeb(x){cout<< #x << " : " <<endl;for(auto p : x) cout<<p.fr<< " " <<p.sc<<endl;}
using namespace std;
int const N=2e5+20;
int Min=-1e9;
int Max=1e9;
ll LLMin=-1e18;
ll LLMax=1e18;
int mod=1e9;
int main()
{

    AB


    int n;
    cin>>n;
    ll b[n+10];
    vector<ll>ans1,ans2;


    for(int i=1;i<=(n/2);i++)
    {
        cin>>b[i];
        if(i==1)
        {
            ans1.pb(0);
            ans2.pb(b[i]);
            continue;
        }

        ll last1=ans1.back();
        ll last2=ans2.back();

        ll x=last1;
        ll y=b[i]-x;

        if(y>last2)
        {
            x=b[i]-last2;
            y=b[i]-x;
        }

        ans1.pb(x);
        ans2.pb(y);

    }

    rev(ans2);

    for(auto i:ans1)
        cout<<i<<' ';
    for(auto i:ans2)
        cout<<i<<' ';
}


Comments

Submit
0 Comments
More Questions

27. Remove Element
39. Combination Sum
378. Kth Smallest Element in a Sorted Matrix
162. Find Peak Element
1529A - Eshag Loves Big Arrays
19. Remove Nth Node From End of List
925. Long Pressed Name
1051. Height Checker
695. Max Area of Island
402. Remove K Digits
97. Interleaving String
543. Diameter of Binary Tree
124. Binary Tree Maximum Path Sum
1465. Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts
501A - Contest
160A- Twins
752. Open the Lock
1535A - Fair Playoff
1538F - Interesting Function
1920. Build Array from Permutation
494. Target Sum
797. All Paths From Source to Target
1547B - Alphabetical Strings
1550A - Find The Array
118B - Present from Lena
27A - Next Test
785. Is Graph Bipartite
90. Subsets II
1560A - Dislike of Threes
36. Valid Sudoku